#pragma once

#include <memory>

#include "native/registry.h"
#include "rtda/frame.h"
//#include "rtda/heap.hpp"
//#include "instructions/base.hpp"

namespace jvm {
    namespace misc {

        class VMNative {
        private:
            static const std::string SUN_MISC_VM;

        public:
            static void init() {
                native::Registry::registerMethod(SUN_MISC_VM, "initialize", "()V", &initialize);
            }

            static void initialize(std::shared_ptr<rtda::Frame> frame);
        };

    } // namespace misc
} // namespace jvm